package com.atguigu.gulimall.product.vo;

import lombok.Data;

/**
 * Object划分：
 * 1、PO(persistant object) 持久对象
 *   对应数据库表的一条记录，PO应该不包含任何对数据库的操作
 * 2、DO(domain object) 领域对象
 *   抽象出的业务实体
 * 3、TO(transfer object) 、DTO(data transfer object) 数据传输对象
 *  不同应用程序之间传输的对象
 * 4、VO(value object) 值对象  -> 可理解为view object 视图对象
 *   业务层之间的数据传递：1）接收页面传递过来的数据，封装对象 2）将业务处理完的对象，封装成页面要用的数据
 * 5、BO(business object) 业务对象
 *   把业务逻辑封装成一个对象，如简历：把教育经历、工作经历、社会关系等PO,封装成一个简历BO
 * 6、POJO(plain ordinary java object) 简单无规则java对象
 *   是DO/DTO/BO/VO的同程
 * 7、DAO(data access object) 数据访问对象
 *   结合PO对数据库进行操作
 */
@Data
public class AttrVo {
    /**
     * 属性id
     */
    private Long attrId;
    /**
     * 属性名
     */
    private String attrName;
    /**
     * 是否需要检索[0-不需要，1-需要]
     */
    private Integer searchType;
    /**
     * 属性图标
     */
    private String icon;
    /**
     * 可选值列表[用逗号分隔]
     */
    private String valueSelect;
    /**
     * 属性类型[0-销售属性，1-基本属性，2-既是销售属性又是基本属性]
     */
    private Integer attrType;
    /**
     * 启用状态[0 - 禁用，1 - 启用]
     */
    private Long enable;
    /**
     * 所属分类
     */
    private Long catelogId;
    /**
     * 快速展示【是否展示在介绍上；0-否 1-是】，在sku中仍然可以调整
     */
    private Integer showDesc;

    /**
     * 属性分组id
     */
    private Long attrGroupId;
}
